Efficient means of Achieving Composability using Object based Conflicts on Transactional Memory

نویسندگان

  • Sathya Peri
  • Ajay Singh
  • Archit Somani
چکیده

Composing together the individual atomic methods of concurrent data-structures (cds) pose multiple design and consistency challenges. In this context composition provided by transactions in software transaction memory (STM) can be handy. However, most of the STMs offer read/write primitives to access shared cds. These read/write primitives result in unnecessary aborts. Instead, semantically rich higher-level methods of the underlying cds like lookup, insert or delete (in case of hash-table or lists) aid in ignoring unimportant lower level read/write conflicts and allow better concurrency. In this paper, we adapt transaction tree model in databases to propose OSTM which enables efficient composition in cds. We extend the traditional notion of conflicts and legality to higher level methods of cds using STMs and lay down detailed correctness proof to show that it is co-opaque. We implement OSTM with concurrent closed addressed hash-table (HT-OSTM) and list (list-OSTM) which exports the higher-level operations as transaction interface. In our experiments with varying workloads and randomly generated transaction operations, HT-OSTM shows speedup of 3 to 6 times and w.r.t aborts HT-OSTM is 3 to 7 times better than ESTM and read/write based STM, respectively. Where as, list-OSTM outperforms state of the art lock-free transactional list, NOrec STM list and boosted list by 30% to 80% across all workloads and scenarios. Further, list-OSTM incurred negligible aborts in comparison to other techniques considered in the paper.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An Innovative Approach for Achieving Composability in Concurrent Systems using Multi-Version Object Based STMs

In the modern era of multicore processors, utilizing multiple cores properly is a tedious job. Synchronization and communication among processors involve high cost. Software transaction memory systems (STMs) addresses this issues and provide better concurrency in which programmer need not have to worry about consistency issues. Several big-data applications which deal large amounts of data can ...

متن کامل

RELSTM: A Proactive Transactional Memory Scheduler

A major impediment to achieving high performance in transactional memory is repeated aborts due to conflicts among transactions. Transaction scheduling mitigates these effects by delaying a transaction until possible conflicting transactions have completed. The paper presents RELSTM, a new transaction scheduler that attempts to predict future conflicts on the basis of second-hop conflicts, name...

متن کامل

Supporting STM in Distributed Systems: Mechanisms and a Java Framework

We present HyFlow — a distributed software transactional memory (D-STM) framework for distributed concurrency control. Lockbased concurrency control suffers from drawbacks including deadlocks, livelocks, and scalability and composability challenges. These problems are exacerbated in distributed systems due to their distributed versions which are more complex to cope with (e.g., distributed dead...

متن کامل

Software Transactional Memory Validation - Time and Space Considerations

With single thread performance hitting the power wall, hardware architects have turned to chip-level multiprocessing to increase processor performance. As a result, issues related to the construction of scalable and reliable multi-threaded applications have become increasingly important. One of the most pressing problems in concurrent programming has been synchronizing accesses to shared data a...

متن کامل

Efficient Object-Based Software Transactions

This paper proposes an efficient object-based implementation of non-blocking software transactions. We use ideas from software distributed shared memory to efficiently implement transactions with little overhead for non-transactional code. Rather than emulating a flat transactional memory, our scheme is object-based, which allows compiler optimizations to provide better performance for long-run...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017